<?php 
/**
 * 		继承中的重载(覆盖)
 *
 * 		对象->成员
 * 		类::成员
 *
 * 		parent::成员  使用parent::访问父类中有被覆盖的方法
 *
 * 		重要：只要是子类的构造方法，去覆盖父类中的构造方法，一定要在子类的最上面调用一下父类被覆盖的方法
 *
 *		权限的问题：子类只能大于或者等于父类的权限，不能小于
 * 		
 */
	class Person{
		protected $name;
		protected $age;
		protected $sex;

		public function __construct($name, $age, $sex){
			$this->name = $name;
			$this->age  = $age;
			$this->sex  = $sex;
		}

		public function say(){
			echo "大家好！我的名字叫：{$this->name}，我已经{$this->age}岁了，我是{$this->sex}人";
		}

		public function eat(){
			echo "大家好！！！我叫张三";
		}

		public function run(){

		}

	}

	class Study extends Person{
		public $school = "EDU";

		public function say(){
			parent::say();
			echo "我在{$this->school}学校";
		}


	}

	class Teacher extends Study {
		public $work;

		public function dowork(){

		}
	}


	$a = new Study("Tom", 25, "女");
	echo $a->say();







 ?>